package com.cmpe451.nutty.model;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
@Table(name = "EXAMPLE_MODEL")
public class Tweet extends BaseModel {
	private static final long serialVersionUID = 1L;

	@Column(name = "TEXT", length = 180)
	private String text;

	@Column(name = "USERNAME", length = 200)
	private String username;

	@Column(name = "TWEET_ID", nullable = false, unique = true)
	private Long tweetId;

	@Column(name = "RETWEET_COUNT", nullable = false)
	private Integer retweetCount;

	@Column(name = "FAVORITE_COUNT", nullable = false)
	private Integer favoriteCount;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "TWEET_CREATED_AT", nullable = false)
	private Date createdAt;

	@Column(name = "USER_PICTURE")
	private String userPicture;

	@Column(name = "USER_FULLNAME")
	private String userFullName;

	@Column(name = "LANGUAGE")
	private String language;

	@Column(name = "TWITTER_USER_ID")
	private Long twitterUserId;

	public String getText() {
		return text;
	}

	public void setText(String text) {
		this.text = text;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public Long getTweetId() {
		return tweetId;
	}

	public void setTweetId(Long tweetId) {
		this.tweetId = tweetId;
	}

	public Date getCreatedAt() {
		return createdAt;
	}

	public void setCreatedAt(Date createdAt) {
		this.createdAt = createdAt;
	}

	public Integer getRetweetCount() {
		return retweetCount;
	}

	public void setRetweetCount(Integer retweetCount) {
		this.retweetCount = retweetCount;
	}

	public Integer getFavoriteCount() {
		return favoriteCount;
	}

	public void setFavoriteCount(Integer favoriteCount) {
		this.favoriteCount = favoriteCount;
	}

	public String getUserPicture() {
		return userPicture;
	}

	public void setUserPicture(String userPicture) {
		this.userPicture = userPicture;
	}

	public String getUserFullName() {
		return userFullName;
	}

	public void setUserFullName(String userFullName) {
		this.userFullName = userFullName;
	}

	public String getLanguage() {
		return language;
	}

	public void setLanguage(String language) {
		this.language = language;
	}

	public Long getTwitterUserId() {
		return twitterUserId;
	}

	public void setTwitterUserId(Long twitterUserId) {
		this.twitterUserId = twitterUserId;
	}

}
